/*
 * To change this template, choose Tools | Templates
 * and open the template in the editor.
 */
package controllers;

import play.Logger;
import models.SemestreAcademico;
import play.mvc.Controller;

/**
 *
 * @author Administrador
 */
public class AperturaCiclo extends Controller{
    
    
    public static void index(String mensaje) {
        SemestreAcademico semestre = SemestreAcademico.find("order by id DESC").first();
        
        if(semestre==null){
            mensaje= "Aun no se han registrado semestres.";
            semestre = new SemestreAcademico();
        }
        Logger.info("Inicio");
        render(semestre, mensaje);
    }
    
    
    public static void crearSemestre(String mensaje){
        render(mensaje);
    }
    
    public static void registarSemestre(SemestreAcademico semestre){
        validation.valid(semestre);
        
        if(validation.hasErrors()){
            crearSemestre("Se deben completar todos los campos");
        }
        semestre.save();
        index("Se ha creado correctamente");
    }
    
    
    
    public static void actualizarSemestre(SemestreAcademico semestre, Long id){
        SemestreAcademico semestreAnterior = SemestreAcademico.findById(id);
        System.out.println("id "+id);
        if(semestreAnterior==null){
            mostrarSemestre("No se pudo actualizar");
        }
        
        semestreAnterior.sem_datFechaFin= semestre.sem_datFechaFin;
        semestreAnterior.sem_datFechaInicio= semestre.sem_datFechaInicio;
        semestreAnterior.sem_vcNombre= semestre.sem_vcNombre;
        semestreAnterior.save();
        index("Se actualizò correctamente");
//        
//        validation.valid("id "+semestre);
//        System.out.println(semestre.id);
//        if(!validation.hasErrors() && semestre.sem_datFechaFin.getTime()>semestre.sem_datFechaInicio.getTime()){
//            
//           semestre.save();
//            
//            Logger.info("Semestre actualizado a "+semestre.sem_datFechaInicio +" - "+semestre.sem_datFechaFin);
//        }else{
//            Logger.info("Fechas no validas");
//            index("Intervalo de fechas no valido");
//        }
//        
//        mostrarSemestre(semestre.id);
    }
    
//    public static void save(SemestreAcademico semestre) {
//        SemestreAcademico semestreAcademico = null;
//        if(semestre.id!=null){
//             semestreAcademico= SemestreAcademico.findById(semestre.id);
//        }
//        if(semestreAcademico==null){
//            semestreAcademico.id=new Long("1");
//            semestreAcademico = new SemestreAcademico();
//        }
//        semestreAcademico.sem_datFechaFin = semestre.sem_datFechaFin;
//        semestreAcademico.sem_datFechaInicio = semestre.sem_datFechaInicio;
//        validation.valid(semestreAcademico);
//        if(!validation.hasErrors()) {
//            // Tenemos que desechar explícitamente las modificaciones del usuario...
//            semestreAcademico.save();
//            System.out.println("guardado");
//            mostrarSemestre(semestreAcademico.id);
//        }
//        index(null);
//    }
    
    public static void mostrarSemestre(String mensaje){
        SemestreAcademico semestre = SemestreAcademico.find("order by id DESC").first();
        render(semestre);
    }
    
   
}